package com.opentae.data.mall.examples;

import com.opentae.core.mybatis.SgExample;
import com.opentae.core.mybatis.example.EntityColumn;
import com.opentae.core.mybatis.example.EntityTable;
import com.opentae.core.mybatis.mapperhelper.EntityHelper;
import com.opentae.data.mall.beans.KeywordView;

import java.util.*;
public class KeywordViewExample extends SgExample<KeywordViewExample.Criteria> {
    public static final Class<KeywordView> beanClass = KeywordView.class;
    public static final EntityTable entityTable = EntityHelper.getEntityTable(beanClass);
    public static EntityColumn keywordId;
    public static EntityColumn createTime;
    public static EntityColumn weight;
    public static EntityColumn colorVal;
    public static EntityColumn text;
    static {
        Set<EntityColumn> columns = entityTable.getEntityClassColumns();
        Map<String, EntityColumn> listMap = new HashMap<>();
        for (EntityColumn column : columns) {
            listMap.put(column.getProperty(), column);
        }
        keywordId = listMap.get("keywordId");
        createTime = listMap.get("createTime");
        weight = listMap.get("weight");
        colorVal = listMap.get("colorVal");
        text = listMap.get("text");
        }

    public KeywordViewExample() {
        this.setTableAlias(entityTable.getName());
    }

    @Override
    public EntityTable getEntityTable() {
        return entityTable;
    }

    @Override
    protected KeywordViewExample.Criteria createCriteriaInternal() {
        return new KeywordViewExample.Criteria(this);
    }

    public static class Criteria extends SgExample.GeneratedCriteria<Criteria> {
        protected Criteria(SgExample example) {
            super(example);
        }

        public KeywordViewExample.Criteria andKeywordIdIsNull() {
            return isNull(keywordId);
        }

        public KeywordViewExample.Criteria andKeywordIdIsNotNull() {
            return isNotNull(keywordId);
        }

        public KeywordViewExample.Criteria andKeywordIdEqualTo(Long value) {
            return equalTo(keywordId, value);
        }

        public KeywordViewExample.Criteria andKeywordIdNotEqualTo(Long value) {
            return notEqualTo(keywordId, value);
        }

        public KeywordViewExample.Criteria andKeywordIdGreaterThan(Long value) {
            return greaterThan(keywordId, value);
        }

        public KeywordViewExample.Criteria andKeywordIdGreaterThanOrEqualTo(Long value) {
            return greaterThanOrEqualTo(keywordId, value);
        }

        public KeywordViewExample.Criteria andKeywordIdLessThan(Long value) {
            return lessThan(keywordId, value);
        }

        public KeywordViewExample.Criteria andKeywordIdLessThanOrEqualTo(Long value) {
            return lessThanOrEqualTo(keywordId, value);
        }

        public KeywordViewExample.Criteria andKeywordIdIn(List<Long> values) {
            return in(keywordId, values);
        }

        public KeywordViewExample.Criteria andKeywordIdNotIn(List<Long> values) {
            return notIn(keywordId, values);
        }

        public KeywordViewExample.Criteria andKeywordIdBetween(Long value1, Long value2) {
            return between(keywordId, value1, value2);
        }

        public KeywordViewExample.Criteria andKeywordIdNotBetween(Long value1, Long value2) {
            return notBetween(keywordId, value1, value2);
        }
        public KeywordViewExample.Criteria andCreateTimeIsNull() {
            return isNull(createTime);
        }

        public KeywordViewExample.Criteria andCreateTimeIsNotNull() {
            return isNotNull(createTime);
        }

        public KeywordViewExample.Criteria andCreateTimeEqualTo(Date value) {
            return equalTo(createTime, value);
        }

        public KeywordViewExample.Criteria andCreateTimeNotEqualTo(Date value) {
            return notEqualTo(createTime, value);
        }

        public KeywordViewExample.Criteria andCreateTimeGreaterThan(Date value) {
            return greaterThan(createTime, value);
        }

        public KeywordViewExample.Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            return greaterThanOrEqualTo(createTime, value);
        }

        public KeywordViewExample.Criteria andCreateTimeLessThan(Date value) {
            return lessThan(createTime, value);
        }

        public KeywordViewExample.Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            return lessThanOrEqualTo(createTime, value);
        }

        public KeywordViewExample.Criteria andCreateTimeIn(List<Date> values) {
            return in(createTime, values);
        }

        public KeywordViewExample.Criteria andCreateTimeNotIn(List<Date> values) {
            return notIn(createTime, values);
        }

        public KeywordViewExample.Criteria andCreateTimeBetween(Date value1, Date value2) {
            return between(createTime, value1, value2);
        }

        public KeywordViewExample.Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            return notBetween(createTime, value1, value2);
        }
        public KeywordViewExample.Criteria andWeightIsNull() {
            return isNull(weight);
        }

        public KeywordViewExample.Criteria andWeightIsNotNull() {
            return isNotNull(weight);
        }

        public KeywordViewExample.Criteria andWeightEqualTo(Integer value) {
            return equalTo(weight, value);
        }

        public KeywordViewExample.Criteria andWeightNotEqualTo(Integer value) {
            return notEqualTo(weight, value);
        }

        public KeywordViewExample.Criteria andWeightGreaterThan(Integer value) {
            return greaterThan(weight, value);
        }

        public KeywordViewExample.Criteria andWeightGreaterThanOrEqualTo(Integer value) {
            return greaterThanOrEqualTo(weight, value);
        }

        public KeywordViewExample.Criteria andWeightLessThan(Integer value) {
            return lessThan(weight, value);
        }

        public KeywordViewExample.Criteria andWeightLessThanOrEqualTo(Integer value) {
            return lessThanOrEqualTo(weight, value);
        }

        public KeywordViewExample.Criteria andWeightIn(List<Integer> values) {
            return in(weight, values);
        }

        public KeywordViewExample.Criteria andWeightNotIn(List<Integer> values) {
            return notIn(weight, values);
        }

        public KeywordViewExample.Criteria andWeightBetween(Integer value1, Integer value2) {
            return between(weight, value1, value2);
        }

        public KeywordViewExample.Criteria andWeightNotBetween(Integer value1, Integer value2) {
            return notBetween(weight, value1, value2);
        }
        public KeywordViewExample.Criteria andColorValIsNull() {
            return isNull(colorVal);
        }

        public KeywordViewExample.Criteria andColorValIsNotNull() {
            return isNotNull(colorVal);
        }

        public KeywordViewExample.Criteria andColorValEqualTo(String value) {
            return equalTo(colorVal, value);
        }

        public KeywordViewExample.Criteria andColorValNotEqualTo(String value) {
            return notEqualTo(colorVal, value);
        }

        public KeywordViewExample.Criteria andColorValGreaterThan(String value) {
            return greaterThan(colorVal, value);
        }

        public KeywordViewExample.Criteria andColorValGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(colorVal, value);
        }

        public KeywordViewExample.Criteria andColorValLessThan(String value) {
            return lessThan(colorVal, value);
        }

        public KeywordViewExample.Criteria andColorValLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(colorVal, value);
        }

        public KeywordViewExample.Criteria andColorValLike(String value) {
            return like(colorVal, value);
        }

        public KeywordViewExample.Criteria andColorValNotLike(String value) {
            return notLike(colorVal, value);
        }

        public KeywordViewExample.Criteria andColorValIn(List<String> values) {
            return in(colorVal, values);
        }

        public KeywordViewExample.Criteria andColorValNotIn(List<String> values) {
            return notIn(colorVal, values);
        }

        public KeywordViewExample.Criteria andColorValBetween(String value1, String value2) {
            return between(colorVal, value1, value2);
        }

        public KeywordViewExample.Criteria andColorValNotBetween(String value1, String value2) {
            return notBetween(colorVal, value1, value2);
        }
        public KeywordViewExample.Criteria andTextIsNull() {
            return isNull(text);
        }

        public KeywordViewExample.Criteria andTextIsNotNull() {
            return isNotNull(text);
        }

        public KeywordViewExample.Criteria andTextEqualTo(String value) {
            return equalTo(text, value);
        }

        public KeywordViewExample.Criteria andTextNotEqualTo(String value) {
            return notEqualTo(text, value);
        }

        public KeywordViewExample.Criteria andTextGreaterThan(String value) {
            return greaterThan(text, value);
        }

        public KeywordViewExample.Criteria andTextGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(text, value);
        }

        public KeywordViewExample.Criteria andTextLessThan(String value) {
            return lessThan(text, value);
        }

        public KeywordViewExample.Criteria andTextLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(text, value);
        }

        public KeywordViewExample.Criteria andTextLike(String value) {
            return like(text, value);
        }

        public KeywordViewExample.Criteria andTextNotLike(String value) {
            return notLike(text, value);
        }

        public KeywordViewExample.Criteria andTextIn(List<String> values) {
            return in(text, values);
        }

        public KeywordViewExample.Criteria andTextNotIn(List<String> values) {
            return notIn(text, values);
        }

        public KeywordViewExample.Criteria andTextBetween(String value1, String value2) {
            return between(text, value1, value2);
        }

        public KeywordViewExample.Criteria andTextNotBetween(String value1, String value2) {
            return notBetween(text, value1, value2);
        }
    }
}